Java进阶-Collection 集合迭代

注意:

  • 以下讲解的遍历方式/迭代方式,是所有 Collection 通用的一种方式。
  • 在 Map 集合中不能用,在所有的 Collection 以及子类中使用。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;

public class CollectionTest02 {
public static void main(String[] args) {
Collection c = new ArrayList();
c.add("abc");
c.add("def");
c.add(100);
c.add(new Object());

// 对集合 Collection 进行遍历/迭代
// 第一步:获取集合对象的迭代器对象 Iterator
Iterator it = c.iterator();
// 第二步:通过以上获取的迭代器对象开始迭代/遍历集合
/*
* 以下两个方法是迭代器对象 Iterator 中的方法:
* boolean hasNext() 如果仍有元素可以迭代,则返回 true
* Object next() 返回迭代的下一个元素
*/
while (it.hasNext()) {
Object obj = it.next();
System.out.println(obj);
}

// 一直取,不会判断,会出现异常:java.util.NoSuchElementException
// while (true) {
// Object obj = it.next();
// System.out.println(obj);
// }
}
}

迭代集合的原理

img